/*
Dominique Jannone
Guillaume Marre
Yohan Ojeda
Laurent Schiavon
*/

package model;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.io.Serializable;
import java.net.ServerSocket;
import java.net.Socket;
import java.net.UnknownHostException;
import java.util.logging.Level;
import java.util.logging.Logger;

import vue.Fenetre;


public class UserClientDelegate implements Runnable {

	// attributs
	public static Socket socket;
	private boolean fin;
	
	//log
	public static final Logger logger = Logger.getLogger(UserClientDelegate.class.getName());
	// Observateur & setters
	public void setFinUcd(boolean fin) {this.fin = fin;}
	
// Constructeur primitif
	public UserClientDelegate(String ip_Serveur , int port_Serveur, Fenetre fenetre){
		try {
			// Connection sur la socket du Serveur eConf
			socket =  new Socket(ip_Serveur,port_Serveur);
		} catch (UnknownHostException e) {
			fenetre.afficheWarningConnectionServer("Aucun serveur à  l'écoute du port. Merci de contacter votre administrateur.");
		  logger.log(Level.SEVERE,"Impossible de se connecter à  l'adresse "+socket.getLocalAddress());
		  logger.log(Level.SEVERE,e.getClass() + ": " +  e.getMessage(), e);
		  
		} catch (IOException e) {
			fenetre.afficheWarningConnectionServer("Aucun serveur à  l'écoute du port. Merci de contacter votre administrateur.");
			 logger.log(Level.SEVERE,"Aucun serveur à  l'écoute du port "+socket.getLocalPort());
			 logger.log(Level.SEVERE,e.getClass() + ": " +  e.getMessage(), e);
		  
		}
		fin=false;
	}



	// Démarrage de la Thread
	public void run() {

		while(!fin){
			logger.log(Level.INFO,"Thread UCD");
		}
		if(fin) logger.log(Level.INFO,"Fin de la Thread UCD");
	}
		
}
